In [1]:
%pylab inline
import matplotlib.pyplot as plt

from ipywidgets import *
Populating the interactive namespace from numpy and matplotlib

Relativistic Doppler effect (vöröseltolódás)

Relativistic Doppler shift for the longitudinal case, with source and receiver moving directly towards or away from each other.

Lásd még itt

Redshift (vöröseltolódás): $z=\frac{\omega_s-\omega_r}{\omega_r}=\frac{\lambda_r-\lambda_s}{\lambda_s}$,

where $\omega_s, \omega_r$ are the frequencies of the source and the reciever, respectively.

For $z>1$ the observed wave length $\lambda_r$ is increased.

For Klein-Gordon equation:

$\omega^2=c^2 k^2 +\mu^2$, where $\mu = m c/\hbar$.

For photon $\mu=0$.

In [2]:
def Doppler_shift(om,V,mu):
    th=-V
    ch=1/sqrt(1-th**2)
    sh=th*ch
    z=ch-1-sqrt(1-mu**2/om**2)*sh  ## redshift z 
    return(z)
In [3]:
Doppler_shift(17,0.8,0.)
Out[3]:
2.000000000000001
In [4]:
V = 0.8
mu = 0.2

ommin,ommax = [1.05*mu,2]
omvec=linspace(ommin,ommax,100)

figsize(12,8)

mu = 0.
plot(omvec,Doppler_shift(omvec,V,mu),'b',label=r'$\mu= $'+str(mu))

mu = 0.1
plot(omvec,Doppler_shift(omvec,V,mu),'r',label=r'$\mu= $'+str(mu))

mu = 0.2
plot(omvec,Doppler_shift(omvec,V,mu),'g',label=r'$\mu= $'+str(mu))

title('Redshift, vöröseltolódás, V= '+ str(V), fontsize=20)
xlabel(r'$\omega_r$',fontsize=20)
ylabel(r'$z=\frac{\omega_s-\omega_r}{\omega_r}$',fontsize=20, rotation=0, labelpad=50)

#ylabel('R (%)',rotation=0,fontsize=16, labelpad=30)

legend(loc='upper right',fontsize = 15)


axis('tight')
grid();